package com.jky.trial.constant;


public enum DataStatus {
    PWD_SALT(1204238, "加密盐"), //盐

    /**
     * 数据状态
     */
    STATUS_ENABLE(1, "启用状态"), //正常
    STATUS_DISABLED(2, "禁用状态"), //故障
    STATUS_DELETED(0, "删除状态"), //

    /**
     * 项目执行状态
     */
    PROJECT_PROGRESSING(1, "勘察中"),
    PROJECT_END(2, "已终止"),
    PROJECT_ARCHIVE(0, "已归档"),
    /**
     * 项目勘察纲要审核状态
     */
    PROJECT_OUTLINE_STATUS_NEED_SUBMIT(1, "待上传"), //技术负责人发起
    PROJECT_OUTLINE_STATUS_NEED_DUTY(2, "项目负责人发起"), //项目负责人
    PROJECT_OUTLINE_STATUS_NEED_CHECK(3, "审核人"), //审核人
    PROJECT_OUTLINE_STATUS_NEED_CHECK_REJECT(30, "审核驳回"), //审核人
    PROJECT_OUTLINE_STATUS_NEED_APPROVE(4, "审定人"), //审定人
    PROJECT_OUTLINE_STATUS_NEED_APPROVE_REJECT(40, "审定驳回"), //审定人
    PROJECT_OUTLINE_STATUS_NEED_APPROVE_RESOLVE(41, "审定通过"), //审定人

    /**
     * 逻辑状态
     */
    LOGIC_EXISTS_STATUS(1, "逻辑存在状态"),
    LOGIC_DELETED_STATUS(0, "逻辑删除状态"),

    /**
     * 日志数据子类型(二级类型)
     */
    LOG_SUB_TYPE_RECORD_HUICI(0, "回次"),
    LOG_SUB_TYPE_RECORD_YANTU(1, "岩土"),
    LOG_SUB_TYPE_RECORD_DONGTAN(2, "动探"),
    LOG_SUB_TYPE_RECORD_BIAOGUAN(3, "标贯"),
    LOG_SUB_TYPE_RECORD_QUTU(4, "取土"),
    LOG_SUB_TYPE_RECORD_QUSHUI(5, "取水"),
    LOG_SUB_TYPE_RECORD_SHUIWEI(6, "水位"),
    LOG_SUB_TYPE_RECORD_BEIZHU(7, "备注"),
    //

    /**
     * 关系类型
     */
    DR_PROJECT(1, "与项目关系"),

    /**
     * Category 数据类型
     */
    CATEGORY_DATA_TYPE_ROLE(1, "角色"), //角色
    CATEGORY_DATA_TYPE_PERMISSION(10, "权限"),//权限
    CATEGORY_DATA_TYPE_COM1(2, "勘察单位"),
    CATEGORY_DATA_TYPE_COM2(3, "委托单位"),
    CATEGORY_DATA_TYPE_COM3(4, "施工单位"),
    CATEGORY_DATA_TYPE_BILL(5, "样品确认单"),
    CATEGORY_DATA_TYPE_TASK_BOOK(6, "任务书"),
    CATEGORY_DATA_TYPE_REPORT(7, "试验成果报告"),
    CATEGORY_DATA_TYPE_HUBI(8, "护壁方法"),
    CATEGORY_DATA_TYPE_ZUANJIN(9, "钻进方法"),
    CATEGORY_DATA_TYPE_YAN(29, "地下水类型"),
    CATEGORY_DATA_TYPE_SHIDU(30, "湿度"),
    CATEGORY_DATA_TYPE_YANTU_CATEGORY(20, "岩土分类"),
    CATEGORY_DATA_TYPE_YANTU_NAME(21, "岩土定名"),
    CATEGORY_DATA_TYPE_DIZHI_REASON(22, "地质成因"),
    CATEGORY_DATA_TYPE_DIZHI_AGE(23, "地质年代"),
    CATEGORY_DATA_TYPE_DONGTAN_CATEGORY(24, "动探类型"),
    CATEGORY_DATA_TYPE_TUYANG_ZHILIANG_LEVEL(25, "土样质量等级"),
    CATEGORY_DATA_TYPE_SHIYANG_CONTENT(26, "试样内容"),
    CATEGORY_DATA_TYPE_SHIYANG_QUYANG_TOOL_METHOD(27, "取样工具和方法"),
    CATEGORY_DATA_TYPE_QUSHUI_METHOD(28, "取水方式"),
    CATEGORY_DATA_TYPE_DIXIASHUI_CATEGORY(29, "地下水"),
    CATEGORY_DATA_TYPE_MIDU(31, "密实度"),
    CATEGORY_DATA_TYPE_YANSE(32, "颜色"),
    CATEGORY_DATA_TYPE_ZHUANGTAI(33, "状态"),
    CATEGORY_DATA_TYPE_TUYANG_STATUS(34, "土样状态"),
    CATEGORY_DATA_TYPE_DEP(11, "部门"),
    CATEGORY_DATA_TYPE_BUS(13, "业务板块"), //业务板块
    CATEGORY_DATA_TYPE_PERSON(12, "业务单位联系人"),
    CATEGORY_DATA_TYPE_SPECS(51, "规范清单"),
    CATEGORY_DATA_TYPE_COUNTRY(40, "国家"),
    CATEGORY_DATA_TYPE_PROVINCE(41, "省/州"),
    CATEGORY_DATA_TYPE_CITY(42, "城市"),
    CATEGORY_DATA_TYPE_VERSION(53, "APK版本"),
    CATEGORY_DATA_TYPE_JZ(52, "钻机"),


    /**
     * 日志类型
     */
    LOG_DATA_TYPE_DEVICE(1, "设备出借记录"),
    LOG_DATA_TYPE_PROJECT(2, "项目"),
    LOG_DATA_TYPE_TASK(3, "任务"), //任务
    LOG_DATA_TYPE_SUMMARY_CHECK(4, "勘察纲要审核"), //勘察纲要审核日志
    LOG_DATA_TYPE_LOGIN_LOG(5, "登录日志"), //登录日志

    //文件类型
    FILE_TYPE_RECORD_IMG(1, "描述记录图片"),
    FILE_TYPE_RECORD_VIDEO(2, "描述记录视频"),
    /**
     * 设备状态
     */
    DEVICE_STATUS_NORMAL(1, "正常"),
    DEVICE_STATUS_DISABLED(0, "故障"),
    /**
     * 消息类型
     */
    MSG_TYPE_ASSIGN(1, "分配消息"),
    MSG_TYPE_SUBMIT_DESC(2, "描述提交"),
    MSG_TYPE_CHECK_DESC(3, "描述审核"),
    MSG_TYPE_SAMPLE_SEND(4, "邮寄样品"),
    MSG_TYPE_BILL_SUBMIT(5, "样品确认单提交"),
    MSG_TYPE_CONFIRM_BILL_SAMPLE(6, "样品确认"),
    MSG_TYPE_BOOK_SUBMIT(7, "任务书提交"),
    MSG_TYPE_REPORT_PUBLISH(8, "试验成功报告发布"),
    MSG_TYPE_PROJECT_SET_PERSON(9, "项目人员设定"),
    MSG_TYPE_BOOK_CHECK(12, "任务书审核"),

    MSG_TYPE_PROJECT_SUM_TECH_UPLOAD(10, "技术负责人上传"),
    MSG_TYPE_PROJECT_SUM_DUTY_SUBMIT(11, "项目负责人提交"),
    MSG_TYPE_PROJECT_SUM_CHECK_SUBMIT(13, "审核人审核"),
    MSG_TYPE_PROJECT_SUM_APPROVE_SUBMIT(14, "审定人审批"),
    MSG_TYPE_TRAIL_ASSIGN_CHECK(15, "实验室分配初审人"),    //实验室分配初审人
    MSG_TYPE_TRAIL_ASSIGN_APPROVAL(16, "实验室分配审核人"), //实验室分配审核人


    /**
     * 发送消息的用户，0默认系统发送
     */
    MSG_SENDER_SYSTEM(0, "系统发送"),

    TASK_STATUS_ASSIGN(0, "待分配"),         // 任务创建后为待分配状态
    TASK_STATUS_DESC(1, "待描述"),         // 技术员分配任务到描述员后，描述员未记录操作
    TASK_STATUS_SUBMIT(2, "待验收"),       // 描述员记录后，提交任务描述至技术员确认
    TASK_STATUS_RESOLVE(3, "已验收"),      // 技术员确认描述员描述记录正确后，验收通过
    TASK_STATUS_REJECTED(4, "待重新描述"),  // 技术员确认描述员描述问题，驳回修改
    //关系类型
    RELATION_TYPE_BILL_SAMPLE(1, "确认单土样"),  // 确认单土样关系
    RELATION_TYPE_ROLE_PERMISSION(2, "角色权限"),  // 角色权限
    RELATION_TYPE_USER_ROLE(3, "用户角色"),  // 用户角色
    RELATION_TYPE_USER_PROJECT(4, "用户项目"),  // 用户项目关系，即用户参与项目对应关系，能够查看某个用户参与多少个项目，也能查看到多少个用户参与了某个项目
    RELATION_TYPE_BOOK_BILL(5, "任务书确认单"),  // 任务书确认单
    RELATION_TYPE_TRIAL_BOOK(6, "试验室分配人员"),  // 试验室分配人员
    RELATION_TYPE_BOOK_USER(7, "任务书用户关系"),  // 任务书用户关系，所有与此任务书相关的用户
    RELATION_TYPE_BILL_USER(8, "土样确认单用户关系"),  // 土样确认单用户关系，所有与此确认单相关的用户
    RELATION_TYPE_REPORT_USER(9, "试验成果报告用户关系"),  // 试验成果报告用户关系，所有与此报告相关的用户
    RELATION_TYPE_PROJECT_SPEC(10, "项目-规范清单"),  // 项目-规范清单
    RELATION_TYPE_JZ_DESCER(11, "钻机组-描述员"),  // 钻机组-描述员
    RELATION_TYPE_BOOK_SAMPLE(12, "任务书-土样"),  // 任务书-土样

    //样品确认单状态
    BILL_STATUS_PAPER(1, "草稿状态"),  // 草稿状态
    BILL_STATUS_SUBMIT(2, "已提交"),  // 已提交
    BILL_STATUS_CONFIRM(3, "已确认"),  // 已确认

    //试验成果报告
    REPORT_STATUS_PAPER(1, "草稿"),  // 草稿
    REPORT_STATUS_SUBMIT(2, "已发布"),  // 发布
    REPORT_STATUS_CONFIRM(3, "已归档"),  // 已归档


    //任务书状态
    BOOK_STATUS_PAPER(1, "草稿状态"),  // 草稿状态
    BOOK_STATUS_SUBMIT(2, "已提交"),  // 已提交
    BOOK_STATUS_CONFIRM(3, "已确认"),  // 已确认
    BOOK_STATUS_CHECK_RESOLVE(4, "审核通过"),  // 审核通过
    BOOK_STATUS_CHECK_REJECT(41, "审核驳回"),  // 审核驳回


    TASK_SAMPLE_STATUS_NEED_SEND(1, "待邮寄"),  // 样品待邮寄
    TASK_SAMPLE_STATUS_NEED_SUBMIT(4, "待提交"),  // 样品待提交
    TASK_SAMPLE_STATUS_NEED_CONFIRM(2, "待确认"),  // 样品待确认
    TASK_SAMPLE_STATUS_NEED_CONFIRMED(3, "已确认"),  // 样品已确认
    //    TASK_STATUS_END(5, "已终止"),          // 任务终止状态
    WATING(0, ""),
    ;

    private Integer val;
    private String desc;//

    DataStatus(Integer val, String desc) {
        this.val = val;
        this.desc = desc;
    }

    public Integer getVal() {
        return val;
    }

    public void setVal(Integer val) {
        this.val = val;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }
}
